package cn.lili.modules.promotion.service;

import cn.lili.modules.promotion.entity.dos.BlindboxCount;
import cn.lili.modules.promotion.entity.dto.CallbackBlindboxDTO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 盲盒统计 业务层
 *
 * @author xiangqian
 */
public interface BlindboxCountService extends IService<BlindboxCount> {

    /**
     * 根据商品ID查询盲盒统计信息
     *
     * @param goodsId 商品ID
     * @return 盲盒统计
     */
    List<BlindboxCount> getBlindboxCountByGoodsId(String goodsId);

    /**
     * 下单后更新盲盒统计
     *
     * @param callbackBlindboxDTO 订单信息
     */
    Boolean callbackBlindbox(CallbackBlindboxDTO callbackBlindboxDTO);

    /**
     * 更新统计信息
     *
     * @param userId      用户ID
     * @param goodsId     商品ID
     * @param orderNumber 购买数量
     */
    BlindboxCount updateBlindboxCount(String userId, String goodsId, Integer orderNumber);
}